Image processing device and image processing method

ABSTRACT

After reading a predetermined number of predetermined blocks for each of a plurality of image data, a first image read unit  13  reads out the plurality of image data read in parallel by repeatedly switching the designated order of the plurality of image data. A JPEG compression unit  14  performs image compression on the plurality of image data read out in block units by the first image read unit  13 , image-compresses a predetermined number of the blocks for each of the plurality of image data, and then inserts an identifier after the last block of the predetermined number of blocks.

TECHNICAL FIELD

This invention relates to an apparatus and method for image processing,and more particularly relates to an apparatus and method for imageprocessing to carry out compression processing such as JPEG, etc. byswitching over between image data of a plurality of systems read outconcurrently.

BACKGROUND ART

For example, transfer of full color image data over an Internet isnormally carried out by transferring JPEG (Joint Photographic ExpertsGroup) format image files. It is necessary to carry out data compressionprocessing (hereinafter referred to as JPEG compression processing) togive JPEG format image data for the image date in order to convert imagedata read from an original document into JPEG format image data (animage file).

As is well-known, broadly speaking, in JPEG compression processing,after image data for a source (original image data) is storedtemporarily in image memory, the original image data is read out and isdivided into a plurality of 8×8 pixel blocks. DCT (Discrete CosineTransforms) and quantization are then carried out on each block,followed by scan transformation and Huffman coding.

With image reading apparatuses such as scanners etc., there are alsocases where both the “front” and “back” of a single original documentare read concurrently (or at substantially the same time). In this case,image data read in concurrently and inputted to image memory (or animage processing unit) exists for the two systems of the front and rear.When image data input then exists for two systems (or more), thefollowing problems occur with respect to this JPEG compressionprocessing.

It is normally necessary to provide a number of arithmetic circuits forcarrying out processing corresponding to the number of systems inputtedin order to perform JPEG compression processing on image data inputtedfor the two systems. In this case, the scale of the circuitry forcarrying out this image compression processing becomes extremely largesimply for carrying out JPEG compression processing and this invitesincreases in cost. This problem becomes ever more significant for threesystems or more.

Further, even when the inputted image data is for two systems, there arecases where this data is subjected to JPEG compression processing usingone arithmetic circuit. In this case, when JPEG compression processingis carried out on image data of the first system, it is necessary tostore all of the image data of the second system which is currently notbeing subjected to image compression processing in image memory. Imagememory of an extremely large capacity is therefore required and thisinvites increases in costs. Further, during the JPEG compressionprocessing, inputted image data that is image data for the first systemis processed by the arithmetic circuit via image memory and image datafor the second system is read out from image memory and processed by thearithmetic circuit. The processing time required for JPEG compressionprocessing is therefore extremely large which brings about a lowering ofthe processing performance. This problem also becomes ever moresignificant for three systems or more.

It is an object of the present invention to provide an image processingapparatus for carrying out image processing on image data readconcurrently for a plurality of systems using a small amount of imagememory and in an efficient manner.

It is another object of the present invention to provide an imageprocessing apparatus for expanding image data which is read concurrentlyfor a plurality of systems and is compressed after dividing the imagedata.

It is still another object of the present invention to provide an imageprocessing apparatus for carrying out image processing on image dataread concurrently for a plurality of systems using a small amount ofimage memory and in an efficient manner, and for expanding image datawhich is read concurrently for a plurality of different systems and iscompressed after dividing the image data.

DISCLOSURE OF INVENTION

The image processing apparatus of the present invention comprises animage memory to store a plurality of image data read in parallel, animage read unit to read out the plurality of image data from the imagememory in block units of a predetermined size, and an image compressionunit to carry out compression processing on the plurality of image dataread out by the image read unit. The image read unit reads out theplurality of image data read in parallel by repeatedly reading apredetermined number of predetermined blocks for each of the pluralityof image data and switching the plurality of image data according to adesignated order after the reading. The image compression unit insertsan identifier after the final block of the predetermined number ofblocks after image compression the predetermined number of blocks foreach of the plurality of image data by image compression in block unitsthe plurality of image data read out by the image read unit.

According to the image processing apparatus of the present invention,every time a predetermined number of blocks of a plurality of image dataread-out in parallel are read out, reading out takes place of theplurality of image data switching in a designated order, and the imageis compressed. As a result, a plurality of image data can be compressedwith a single image compression processor and the possibility of circuitscale becoming substantial for image compression processing just toperform JPEG compression processing thus inviting cost increases isavoided. Further, it is not necessary for all image data that is not tobe subjected to image compression processing within the plurality ofimage data to be stored in the image memory, a large capacity imagememory is therefore not required, and cost increases are avoided.Moreover, during image compression processing, each of the plurality ofimage data passes through the image memory and is subjected to imagecompression processing at the image compression processor. Theprocessing time required for the image compression processing thereforedoes not have to be made long and reduction in processing performancecan be avoided.

The image processing apparatus of the present invention comprises animage processing control unit to receive an image file storingimage-compressed image data, and an image expansion unit to expand theimage-compressed image data. The image-compressed image data comprises aplurality of image data read in parallel, and each of the plurality ofimage data includes predetermined numbers of blocks of a predeterminedsize which are image-compressed in units of the blocks and an identifierinserted after the last block of the predetermined numbers of blocks,and the plurality of image data is arranged so as to switch over betweenthe plurality of image data according to a designated order. The imageprocessing control unit separates the image-compressed image data eachof the plurality of image data according to the identifiers included inthe image-compressed image data and sends the separated plurality ofimage data to the image expansion unit. The image expansion unit expandseach of the separated plurality of image data in units of the blocks.

According to the image processing apparatus of the present invention, atthe image processing apparatus, image-compressed image data is datawhere a plurality of image data read out in parallel image-compressedevery predetermined number of blocks and an identifier is inserted. Inthis way, it is possible to separate a plurality of image data from theimage-compressed image data in accordance with the identifiers withoutperforming expansion. The time required for processing image-compressedimage data can therefore be made shorter rather than expanding and thenseparating the data and reductions in processing performance can beavoided.

An image processing method of the present invention comprises storing aplurality of image data read in parallel, reading out the plurality ofimage data read in parallel by repeatedly reading a predetermined numberof predetermined blocks for each of the plurality of image data andswitching the plurality of image data according to a designated orderafter the reading, inserting an identifier after the final block of thepredetermined number of blocks after image compression the predeterminednumber of blocks for each of the plurality of image data by imagecompression in block units the plurality of image data read out,receiving an image file storing the image-compressed image data,separating the image-compressed image data each of the plurality ofimage data according to the identifiers included in the image-compressedimage data, and expanding each of the separated plurality of data inunits of the blocks.

According to the image processing method of the present invention, withthis image processing method, a plurality of items of image data readout in parallel are read-out and image-compressed by switching theplurality of image data in a designated order every time a predeterminednumber of blocks is read-out, and identifiers are inserted. In this way,as described above, it is possible to image-compress a plurality ofimage data using a single image compression processor. It is thereforepossible to store all image data within the plurality of image data thatis not subjected to image compression processing can be stored in theimage memory. It is therefore possible for each of a plurality of imagedata to be passed through the image memory and be subjected to imagecompression processing by the image compression processor during imagecompression processing. Increases in circuit scale and image memory sizein order to perform image compression processing can therefore beavoided and processing time taken up by the image compression processingcan be prevented from becoming long. Further, it is possible to separatea plurality of image data from the image-compressed image data inaccordance with the identifiers. The time required for processingimage-compressed image data can therefore be made shorter as a result ofexpanding and then separating the data.

BRIEF DESCRIPTION OF DRAWINGS

FIG. 1 is a view illustrating an image processing system, where FIG. 1Ashows a structure for an image processing system including an imageprocessing apparatus of the present invention and FIG. 1B shows imageprocessing occurring in the image processing system of FIG. 1A.

FIG. 2 is a view of a structure for a scanner constituting an imageprocessing apparatus of the present invention.

FIG. 3A to FIG. 3D are views illustrating image processing.

FIG. 4 is a view illustrating image processing.

FIG. 5 is a view illustrating a host computer, where FIG. 5A shows thestructure of a host computer constituting an image processing apparatusof the present invention and FIG. 5B shows expansion occurring in thisimage processing.

FIG. 6 is a view illustrating image processing.

FIG. 7 is a view illustrating image processing.

BEST MODE FOR CARRYING OUT THE INVENTION

FIG. 1A is a view of a structure for an image processing system, andshows an image processing system including an image processing apparatusof the present invention.

As shown in FIG. 1A, an image processing system of the present inventioncomprises a scanner 1 constituting an image processing apparatus of thepresent invention, a host computer 2 constituting an image processingapparatus of the present invention, and an interface 3 connectingbetween the scanner 1 and host computer 2. In addition, the scanner 1may also be an image reading apparatus such as a photocopy machine or afacsimile device. The host computer 2 may also be, for example, aserver, an image reading apparatus such as a photocopy machine, or afacsimile device. The scanner 1 makes a JPEG image file 4 based on aplurality of image data concurrently read and transfers them to the hostcomputer 2 via the interface 3. The interface 3 may be a network suchas, for example, a LAN (Local Area Network), WAN (Wide Area Network) ornetwork such as the Internet. The host computer 2 divides the receivedJPEG image file 4 up for each of the plurality of image data, andexpands the each. Namely, the host computer 2 is also an imageprocessing apparatus.

FIG. 2 is a view of a structure for an image processing apparatus, andshows a structure for a scanner 1 constituting an image processingapparatus of the present invention. In this example, the scanner 1 isequipped with first and second image input units 11A and 11B forconcurrently (at substantially the same time) reading in two items ofimage data, single image memory 12, a first image read unit 13, singleJPEG compression unit 14, an image writing unit 15, and a second imageread unit 16. The first image read unit 13 is provided with a blocksequence control unit 131 and an input switching control unit 132. TheJPEG compression unit 14 comprises a compression processing unit 141 anda restart marker insertion unit 142.

The first and second input units 11A and 11B comprise image readers 111Aand 111B (refer to FIG. 3A) constituted by CCDs, analog/digitalconverters and image processors (neither of which are shown), acquireimage data through well-known image processing, and store the acquiredimage data in the image memory 12. Namely, the first and second imageinput units 11A and 11B carry out various correction processing on imagedata (digital signal) obtained by converting image data read by theimage readers 111A and 111B to a digital signal, carry out binarizingetc. if necessary, carry out optimization processing to form image data,and store the formed image data is stored in the image memory 12.

In this example, there are provided image input units 11A and 11B fortwo systems for reading in front side and reverse side images for theoriginal document. There exist therefore two image data which is readconcurrently and is inputted to single image memory 12 and single JPEGcompression unit 14. In this example, as shown in FIG. 1B, the firstimage input unit 11A, for example, reads an image A for the frontsurface of an original document 100 using the image reader 111A, and, asshown in FIG. 3A, writes this image data (front surface image data) A tothe image memory 12. As shown in FIG. 1B, the second image input unit11B reads an image B for the rear surface of the original document 100using the image reader 111B and writes this image data (rear surfaceimage data) B to the image memory 12. Therefore, in this example, theimage memory 12 stores the image data A and B concurrently read for twosystems.

As shown in FIG. 3A, the image readers 111A and 111B are positioned in asub-scanning direction (the direction of the arrow Y) spaced from eachother by a distance d (for example, approximately 1 cm). When both ofthe image readers 111A and 111B are provided at the same position in thesub-scanning direction Y, light from light sources for both of the imagereaders 111A and 111B passes through the source document 100 andaccurate image data cannot be acquired. The vertical positionalrelationship of the image readers 111A and 111B is the opposite of thecase shown in FIG. 3A. This example shows where code A is assigned tothe image reader 111 advancing in the sub-scanning direction Y, andtakes the image input unit 11 equipped with the image reader 111A as afirst image input unit 11A and the surface read by the first image inputunit 11A as the front surface (this may also be reversed).

As is well-known, JPEG compression processing divides the image data upinto blocks of 8×8 pixels and carries out JPEG compression on eachblock. The adaptation of this to the original document 100 and imagememory 12 in this example is shown in FIG. 4.

Single image data in this example comprises image data for one page. Thetwo page portion of image data for the front page and rear page istherefore read-in concurrently. One page portion of image data includes,for example, 500 JPEG (8×8) blocks provided in a main scanning directionX (although there are more in reality), and n (for example, a fewthousand) JPEG blocks provided in the sub-scanning direction Y. The rowsof blocks in the main scanning direction X are shown in order from thetop by assigning numbers B1 to B500. In order to keep the drawingssimple, the distance d is taken to be a distance corresponding to, forexample, four blocks, i.e. 32 pixels (although in reality this isapproximately 1 cm and the number of pixels is correspondingly larger).The rows of blocks occurring in the main scanning direction X are givennumbers “#1 to #n” in order to distinguish the order and also givendistinction of the front and reverse, so as to be expressed as, forexample, “front #1”. Therefore, in this case, one block row “front #1”comprises blocks B1 to B500 in order from the top, and one item of imagedata, i.e. one page portion of image data comprises n block rows “front#1” to “front #n” or “rear #1” to “rear #n” in order from the top. x

Regarding this reading, with respect to one page of image data, one row(pixel row) of data is read in the main scanning direction X in orderfrom the top by the image readers 111A and 111B, with this beingrepeated for each pixel row in the sub-scanning direction Y Then,regarding the read image data, one pixel row of image data (one row or aplurality of rows) is written as is in the direction X at the imagememory 12 by the image input units 11A and 11B, with this being repeatedfor the direction Y.

Next, as shown in FIG. 3B, in the sub-scanning direction Y, block rows“front #1” to “front #4” corresponding to the distance d at the rearsurface are read-out in advance at the front surface of the originaldocument 100, with image data for block rows “front #5” of the frontsurface onwards and block rows rear #1 of the rear surface onwards beingread out in parallel, and with block rows “rear #(n-3)” to “rear #n”corresponding to the distance d being read out last, with this imagedata being written to the image memory 12 in this order. However, inreality, there is one image memory 12, and as shown in FIG. 3C, blockrows “front #1” to “front #4” read out in advance are written in orderfrom the top of the image memory 12, and next, block rows “front #5”,“rear #1”, “front #6”, and “rear #2” onwards are written alternately,with block rows “rear #(n-3)” to “rear #n” written last, by the imageinput units 11A and 11B.

On the other hand, regarding reading out form image memory, it isnecessary to read out image data from the image memory 12 in block unitsin order to carry out JPEG compression at the JPEG compression unit 14.However, regarding one page of image data, data for one pixel row in themain scanning direction X is read out from the image memory 12 one at atime in order from the top, with this being repeated for each pixel rowin the sub-scanning direction Y. At the first image read unit 13, theread-out image data is put into a format capable of undergoing JPEGcompression as described below for inputting to the JPEG compressionunit 14.

The first image read unit 13 then reads out image data from the imagememory 12, and the block sequence control unit 131 makes two items(front and rear) of image data in block units of a predetermined sizefrom the image memory 12, when this data is inputted to the JPEGcompression unit 14. The size of the blocks is taken to be 8 pixels×8pixels so as to enable JPEG compression. In reality, the block sequencecontrol unit 131 reads out and holds eight pixel rows one pixel row at atime from the top position of reading at this time, reads out eightpixels from the top for each pixel row of this eight rows, and repeatsthis for one block. Block size can be changed. For example, block sizemay be 16×16, or 16×8, etc.

After reading out just a predetermined number of these predeterminedblocks for the two items of image data A and B, the first image readunit 13 switches over between the plurality of image data in adesignated order using the input switching control unit 132. Asdescribed above, the targets of reading are each one page of image data,with the predetermined number corresponding to the width in the mainscanning direction X of the page. Therefore, in this example, this is500. This predetermined number can be changed. For example, when thesize of the block is 16×16, then this number can be taken to be 250.Moreover, the predetermined number may be a number other than the widthin the main scanning direction X of the page. It is also possible todesignate the order of switching of the plurality of items of imagedata. In this example, the block rows are arranged in the order of“front #1 to front #4”, “front #5”, “rear #1”, “front #6”, “rear #2”, .. . , “rear #(n-3)” to “rear #n”, with switching in this manner beingdesignated.

The first image read unit 13 reads out the two items of image data A andB read out in parallel by repeating the aforementioned operation butstarts to read out each of the two items of image data A and B prior tostoring all of the data for each item of image data in the image memory12. For example, when several 100 block rows are stored collectively forthe front image data A and the rear image data B, the first image readunit 13 starts to read out from the top. The starting of the reading isdecided so that the first image read unit 13 adopts a predeterminedtiming. As described above, as shown in FIG. 3, the first image readunit 13 reads block rows “front #1” to “front #4”, then alternatelyreads out block row “front #5”, “rear #1”, “front #6”, “rear #2”onwards, and finally reads out block row “rear #(n-3) to rear #n forinputting to the JPEG compression unit 14. The front image data A andthe rear image data B is therefore mixed together and inputted to theJPEG compression unit 14.

The JPEG compression unit 14 subjects image data inputted by the firstimage read unit 13 to JPEG compression, inserts a re-start marker, andoutputs this to the image writing unit 15. Namely, as shown in FIG. 3D,the JPEG compression unit 14 performs image compression in units of theblock B using the compression processing unit 141 on image data for twosystems for the front and rear which is read out by the first image readunit 13 in block B units of eight pixels by eight pixels. Namely, DCT(discrete cosine transforms) and quantization is carried out for eachblock, with scan conversion and Huffman coding also being carried out.Regarding each of the items of image data A and B for the front andrear, the JPEG compression unit 14 subjects the predetermined number of500 of these blocks B to image compression, and finally inserts arestart marker RM as an identifier after the compressed data of theblock B500 using the restart marker insertion unit 142. The restartmarker RM is therefore added to the end of the compressed data (orbetween the following block row) every one block row. In this example,the data is arranged in the order of (compression data for) block row“front #1”, RM, “front #2”, RM, “front #3”, . . . , rear #n, RM. Thecompression data for the image data A for the front page and thecompression data for the image data B for the rear page is thereforemixed up together. A header is attached to the head of the JPEG imagefile 4.

The image writing unit 15 then writes image data subjected to JPEGcompression and outputted by the JPEG compression unit 14 to an emptyregion of the image memory 12. For example, the block row is written tothe region from which the block row was originally read out from.

The second image read unit 16 reads out image data from the image memory12 and transfers the data to the host computer 2 via the interface 3.This image data is JPEG-compressed image data, i.e., the JPEG image file4. As shown in FIG. 1B, the JPEG image file 4 is made as one JPEG imagefile for the front and rear images. Namely, in this case, the secondimage read unit 16 creates one JPEG image file 4 that integrates theimage data A and B. The host computer 2 divides the received single JPEGimage file 4 into two image data A and B prior to expanding the JPEGimage file 4, and then expands each of the image data A and B to obtainrestored image data A and B.

FIG. 5A is a view of the structure of the host computer, and shows thestructure of the host computer 2 constituting the image processingapparatus of the present invention. In this example, the host computer 2is equipped with a scanner driver 21, JPEG expansion unit 23, and memory24. The scanner driver 21 is equipped with a separation processing unit22.

The scanner driver 21 controls the scanner 1 and carries outcommunication with the scanner 1 so as to receive a JPEG image file 4storing JPEG-compressed image data from the scanner 1. The scannerdriver 21 passes the received JPEG image file 4 over to the separationprocessing unit 22.

The separation processing unit 22 detects the restart marker RM in theJPEG image file 4 containing the restart marker RM without expanding thefile (prior to expansion) and then separates image data A and B for thefront and rear in accordance with this restart marker RM. Therefore, asshown by the dotted line in FIG. 5A, it is not necessary for the hostcomputer 2 to be equipped with a buffer(memory) for inputting the imagedata received by the scanner driver 21 to the JPEG expansion unit 23.The separation processing unit 22 sends the separated image data to theJPEG expansion unit 23.

The JPEG expansion unit 23 expands data separated for image-compressedimage data of the JPEG image file 4 and stores this in the memory (imagememory) 24. The JPEG-compressed image data is expanded in block units.In this way, as shown in FIG. 5B, expanded image data 241 for a frontpage and expanded image data 242 for a rear page can be obtained.

As described above, the JPEG image file 4 received by the scanner driver21 contains JPEG-compressed data that is mixed for the two items ofimage data A and B for the front and rear. However, in reality,according to the present invention, the JPEG file 4 includes a restartmarker RM. Therefore, at the separation processing unit 22, processingthat is the reverse of processing shown in FIG. 3D is carried out.Namely, the separation processing unit 22 detects the restart marker RMin order from the top of the JPEG image file 4 and separates thecompressed data (block rows) into the predetermined image data up to thedetected restart marker RM. In this example, as described above, theJPEG image file 4 is constituted by (compression data for) block row“front #1”, RM, “front #2”, RM, “front #3”, . . . , rear #n, RM, inorder from the top. When the first restart marker RM is detected, theblock rows up to this point are separated as “front #1”, the restartmarker RM is deleted and the separated data is inputted to the JPEGexpansion unit 23. When up to four restart markers RM are detected,these are divided as “front #2”, “front #3”, and “front #4” and inputtedto the JPEG expansion unit 23. When five and six restart markers RM aredetected, these are taken as “front #5” and “rear #1”, alternatelyseparated into front page image data (for the fifth block row) and rearpage image data (for the first block row) and inputted to the JPEGexpansion unit 23.

In the conventional art, when JPEG-compressed data for the image data Aand B for the front and rear are mixed, it is not possible to determinewhich portion is front page image data and which portion is rear pageimage data without expanding the whole of the JPEG image file 4. It istherefore necessary to provide a buffer (memory) for inputting the imagedata to the JPEG expansion unit 23 and it is necessary for the capacityof the memory to be sufficient to store the whole of the JPEG image file4.

Further, there are cases where image expansion is completely unnecessaryat the host computer 2 during inputting of images from the scanner 1.For example, there are cases such as the inputting of image data for alarge volume of pages where filing takes place simply by separating aJPEG image file. In such cases, according to the present invention, itis not necessary to perform expansion processing on the image simply to(only) separate the image and extremely high-speed image processing istherefore possible. In the conventional art, an image cannot beseparated without being expanded. It is therefore unavoidable that theimage is expanded regardless of it being unnecessary to expand the imagewhen it is only necessary to file the image file.

FIG. 6 and FIG. 7 are views illustrating image processing and showtransfer of the JPEG image file 4 from the scanner 1 of the presentinvention to the host computer 2 and expansion of the received JPEGimage file 4 at the host computer 2.

In FIG. 6, the first image read unit 13 of the scanner 1 reads out thetwo items of image data A and B stored in the image memory 12 in apredetermined order from the block row “front #1” under the control ofthe input switching control unit 132. At this time, the block sequencecontrol unit 131 reads out image data for blocks B1 to B500 constitutingthe block row “front #1” in the order of block B1, B2 . . . . and sendsthe image data to the JPEG compression unit 14. At the time of readingout the image data for the 500 blocks B1 to B500, the input switchingcontrol unit 132 switches over the image data to be read out from blockrow “front #1” to block row “front #2”.

At the compression processing unit 141, the JPEG compression unit 14carries out JPEG compression processing for each block on the image datafor the blocks B1 to B500 constituting the inputted block row “front #1”in the order of block B1, B2, . . . . The restart marker insertion unit142 then adds a restart marker RM (shown by an oblique line here and inthe following) after the last block B500. The JPEG-compressed blocks B1to B500 are then re-written to the image memory 12 together with therestart marker via the image writing unit 15.

The first image read unit 13 (or the block sequence control unit 131 init) similarly reads out image data for the blocks B1 to B500constituting the block row “front #2” in accordance with the switchingand then switches over reading out of the image data. The JPEGcompression unit 14 carries out JPEG compression processing on imagedata for the blocks B1 to B500 of the block row “front #2”, and finallyadds a restart marker RM to the end of the image data and writes theimage data to the image memory 12. Similarly, in the following, as shownin FIG. 6, each of the block rows are read out in the order of “front#3”, “front #4”, “front #5”, “rear #1”, “front #6”, “rear #2”, . . .JPEG-compressed, and re-written.

As shown in FIG. 7, as the processing similarly advances, each of theblock rows are read out in the order of “front #n-1”, “rear #n-5”,“front #n”, “rear #n-4”, “rear #n-3”, “rear #n-2”, “rear #n-1”, “rear#n”, JPEG-compressed, and re-written. This compressed data is thenread-out and sent to the host computer 2 as a single JPEG image file 4.

On the other hand, the scanner driver 21 of the host computer 2 sendsthe received JPEG image files 4 to the separation processing unit 22 inthe order of receipt. When the separation processing unit 22 checks theJPEG image file 4 from the top and detects the restart marker RM, thecompression data up to the detected restart marker RM is separated intoblock row “front #1”, the restart marker RM is deleted and the separateddata is input to the JPEG expansion unit 23. The JPEG expansion unit 23expands the separated data as the block row “front #1” (the block rowfor the top of the image data A for the front page).

After this, when the separation processing unit 22 detects the nextrestart marker RM, the compression data up to the detected restartmarker RM is separated into the block row “front #2”, the restart markerRM is deleted, and the separated data is inputted to the JPEG expansionunit 23. The JPEG expansion unit 23 expands the separated data as theblock row for “front #2”. Similarly, in the following, as shown in FIG.6, the compressed data is separated and expanded in an order for each ofthe block rows of “front #3”, “front #4”, “front #5”, “rear #1”, “front#6”, “rear #2”, . . . .

As shown in FIG. 7, as the processing similarly advances, compresseddata is separated and expanded for each of the block rows in the orderof “front #n-1”, “rear #n-5”, “front #n”, “rear #n-4”, “rear #n-3”,“rear #n-2”, “rear #n-1”, “rear #n”.

In the above, a description is given according to the preferredembodiments of the present invention but various modifications arepossible in accordance with the main points of the present invention.

For example, image data read-out in parallel to be subjected to JPEGcompression processing may be for three systems (three items) or more.Further, reading of a plurality of items of image data in parallel doesnot have to be achieved by providing two (or more) image input units,but can also be achieved by providing one image input unit capable ofhigher operation speeds than the JPEG compression unit 14 and switchingthis over. It is also possible to actually read a plurality of items ofimage data in parallel. Further, the image data may be full color imagedata, monochrome image data, or binarized image data. Moreover, thepresent invention is similarly applicable to image compressionprocessing other than JPEG compression processing.

Industrial Applicability

As described above, according to the present invention, at the imageprocessing apparatus, a plurality of items of image data read out inparallel are read-out and image-compressed by switching the plurality ofimage data in a designated order every time a predetermined number ofblocks are read-out. In this way, a plurality of image data can beimage-compressed using a single image compression processor and thescale of the circuit for carrying out image compression processingbecoming large can be avoided. Further, it is not necessary for allimage data that is not to be subjected to image compression processorwithin the plurality of image data to be stored in the image memory anda large capacity image memory is therefore not required. Moreover,during image compression processing, each of the plurality of image datapasses through the image memory and is subjected to image compressionprocessing at the image compression processor. The processing timerequired for the image compression processing can therefore be madeshort.

Further, according to the present invention, at the image processingapparatus, image-compressed image data is data where a plurality ofimage data read out in parallel are image-compressed every predeterminednumber of blocks and an identifier is inserted. In this way, a pluralityof image data is separated from image-compressed image data inaccordance with the identifiers. The time required for processingimage-compressed image data can therefore be made shorter rather thanexpanding and then separating the data.

Further, according to the present invention, with this image processingmethod, a plurality of items of image data read out in parallel areread-out and image-compressed by switching the plurality of image datain a designated order every time a predetermined number of blocks areread-out, and identifiers are inserted. In this way, as described above,it is possible to image-compress a plurality of image data using asingle image compression processor. It is therefore possible to storeall image data within the plurality of image data that is not subjectedto image compression processing stored in the image memory. It istherefore possible for each of a plurality of image data to be passedthrough the image memory and be subjected to image compressionprocessing during image compression processing. Increases in circuitscale and image memory size in order to perform image compressionprocessing can therefore be avoided. Moreover, a plurality of image datais separated from image-compressed image data in accordance with theidentifiers. The time required for processing can therefore be madeshorter by expanding and then separating the image-compressed imagedata.

1. An image processing apparatus comprising: an image memory to store aplurality of image data read in parallel; an image read unit to read outthe plurality of image data from the image memory in block units of apredetermined size; and an image compression unit to carry outcompression processing on the plurality of image data read out by theimage read unit, wherein the image read unit reads out the plurality ofimage data read in parallel by repeatedly reading a predetermined numberof predetermined blocks for each of the plurality of image data andswitching the plurality of image data according to a designated orderafter the reading, and wherein the image compression unit inserts anidentifier after the final block of the predetermined number of blocksafter image compression the predetermined number of blocks for each ofthe plurality of image data by image compression in block units theplurality of image data read out by the image read unit.
 2. An imageprocessing apparatus according to claim 1, wherein the image read unitreads out each of the plurality of image data prior to storing all ofthe data for each of the plurality of image data in the image memory,and wherein the image compression unit performs image compression in theblock units on the plurality of image data read out from the image readunit.
 3. An image processing apparatus according to claim 1, wherein thepredetermined number can be changed, and the designation of the order ofswitching of the plurality of image data can be changed.
 4. An imageprocessing apparatus according to claim 1, wherein the image compressionis JPEG compression, and the identifier is a restart marker.
 5. An imageprocessing apparatus according to claim 1, wherein each of the pluralityof image data is one page of image data, and the predetermined number isa number corresponding to the width in the main scanning direction ofeach page for the plurality of image data.
 6. An image processingapparatus comprising: an image processing control unit to receive animage file storing image-compressed image data; and an image expansionunit to expand the image-compressed image data, wherein theimage-compressed image data comprises a plurality of image data read inparallel, and each of the plurality of image data includes predeterminednumbers of blocks of a predetermined size which are image-compressed inunits of the blocks and an identifier inserted after the last block ofthe predetermined numbers of blocks, and the plurality of image data isarranged so as to switch over between the plurality of image dataaccording to a designated order, wherein the image processing controlunit separates the image-compressed image data each of the plurality ofimage data according to the identifiers included in the image-compressedimage data and sends the separated plurality of image data to the imageexpansion unit, and wherein the image expansion unit expands each of theseparated plurality of image data in units of the blocks.
 7. An imageprocessing method comprising: storing a plurality of image data read inparallel; reading out the plurality of image data read in parallel byrepeatedly reading a predetermined number of predetermined blocks foreach of the plurality of image data and switching the plurality of imagedata according to a designated order after the reading; inserting anidentifier after the final block of the predetermined number of blocksafter image compression the predetermined number of blocks for each ofthe plurality of image data by image compression in block units theplurality of image data read out; receiving an image file storing theimage-compressed image data; separating the image-compressed image dataeach of the plurality of image data according to the identifiersincluded in the image-compressed image data; and expanding each of theseparated plurality of data in units of the blocks.